// ==========================================================================
// LV自动生成业务逻辑层相关代码，只生成一次，按需修改,再次生成不会覆盖.
// date：2024-12-04 09:19:22 +0800 CST
// author：wangwei
// ==========================================================================
package service

import (
	"time"
	commonLog "gin/common/log"
	"github.com/gin-gonic/gin"
	"gin/common/db/config"
	entity "gin/business/model"
	"gin/common"
	util "gin/common/util"
	"gin/common/constant"
	"gin/system/service"
)

//表名称  提取
var tableName = "sys_job"

// TODO 所有表字段提取 --待实现，还没有写完
var sqlTitle = ""

//todo 业务实现代码
//查询 SysJob 定时任务调度表 列表信息
func GetSysJobList(c *gin.Context) {
	logger := commonLog.InitLogger()
	logger.Println("--------->执行了: SysJob 定时任务调度表 列表查询接口")
	resultList := make([]*entity.SysJob, 0)
	genErr := config.GormDb.Model(&entity.SysJob{}).Table(tableName).Select(sqlTitle).Where("LOWER(1) = LOWER(?)", 1).Scan(&resultList).Error
	if genErr != nil {
		common.ReturnError(c, constant.ERRORCODE(), constant.ERRORMSG()+",错误详细信息为： "+util.MapToJson(genErr), "", int64(len("")))
		panic("")
	}
	common.ReturnListSucess(c, constant.SUCCESSCODE(), constant.SUCCESSMSG(), resultList, int64(len(resultList)))
}

//根据id查询 SysJob 定时任务调度表 详情信息
func GetSysJobFindById(c *gin.Context) {
	logger := commonLog.InitLogger()
	logger.Println("--------->执行了：SysJob 定时任务调度表 id查询接口")

	resultList := make([]*entity.SysJob, 0)
	id := c.Param("id")
	err := config.GormDb.Model(&entity.SysJob{}).Table(tableName).
		Select("dict_id", "dict_name", "dict_type", "status", "create_by", "create_time", "remark").
		Where("LOWER(id) = LOWER(?)", id).Scan(&resultList).Error
	if err != nil {
		common.ReturnError(c, constant.ERRORCODE(), constant.ERRORMSG()+",错误详细信息为： "+util.MapToJson(err), "", int64(len("")))
		panic("")
	}
	common.ReturnListSucess(c, constant.SUCCESSCODE(), constant.SUCCESSMSG(), resultList, int64(len(resultList)))
}

//新增 SysJob 定时任务调度表 信息
func AddSysJob(c *gin.Context) {
	logger := commonLog.InitLogger()
	logger.Println("--------->执行了： SysJob 定时任务调度表新增接口")

	//当前登录用户，用户账号信息
	sysUser := service.GetProfile1(c)

	//公用字段赋值
	entity := entity.SysJob{}
	entity.CreateBy = string(sysUser.UserId)
	//entity.DeptId = sysUser.DeptId
	entity.CreateTime = time.Now()

	err := config.GormDb.Model(&entity).Table(tableName).Create(entity).Error
	if err != nil {
		common.ReturnError(c, constant.ERRORCODE(), "操作失败", err, int64(len("")))
		panic("")
	}
	common.ReturnSucess(c, constant.SUCCESSCODE(), "操作成功", "", int64(len("")))
}

//修改 SysJob 定时任务调度表 信息
func PutSysJob(c *gin.Context) {
	//TODO
}

//删除 SysJob 定时任务调度表 信息
func DelSysJob(c *gin.Context) {
	//TODO
}
